﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using WorldConqueror.Libraries.Maths.Enumerations;
using WorldConqueror.Libraries.Maths.Functions;
using WorldConqueror.Libraries.Maths.MathShapes;

namespace WorldConqueror.Libraries.Maths.Factories
{
    public interface IFunctionsFactory
    {
        IFunction<ResultType> CreateOneParameterFunction<ResultType>(
            FunctionType functionType, 
            IMathShape parameter);
        IFunction<ResultType> CreateTwoParametersFunction<ResultType>
            (FunctionType functionType, 
            IMathShape parameter1, 
            IMathShape parameter2);
    }
}
